package com.fdb.efp.nls.service.dao;

import java.util.List;

import com.fdb.efp.nls.service.domain.queue.NlsProcessBizH;
import com.fdb.efp.nls.service.vo.queue.NlsProcessBizHVO;
import org.apache.ibatis.annotations.Param;

/**
 * DAO interface:网贷业务过程历史
 * 
 * @author huangwb
 * @since 2018年12月27日 上午8:33:47
 * @version 1.0
 */
public interface NlsProcessBizHDao {

	public int insertNlsProcessBizH(NlsProcessBizH nlsProcessBizH);

	public int deleteByPk(NlsProcessBizH nlsProcessBizH);

	public int updateByPk(NlsProcessBizH nlsProcessBizH);

	public NlsProcessBizH queryByPk(NlsProcessBizH nlsProcessBizH);

	public List<NlsProcessBizH> queryAllOwnerByPage(NlsProcessBizHVO nlsProcessBizH);

	public List<NlsProcessBizH> queryAllCurrOrgByPage(NlsProcessBizHVO nlsProcessBizH);

	public List<NlsProcessBizH> queryAllCurrDownOrgByPage(NlsProcessBizHVO nlsProcessBizH);

	public List<NlsProcessBizH> queryAllCurrOwnerPrdByPage(NlsProcessBizHVO nlsProcessBizH);

	/**
	 * 将T-1的数据插入到历史表中
	 * 
	 * @param currAppDate
	 * @return
	 * @author huangwb
	 * @since 2019年1月3日 上午11:00:53
	 * @version 1.0
	 */
	public int insertTMinus1DDataToH(@Param("currAppDate") String currAppDate);

	/**
	 * 分页查询列表数据
	 * 
	 * @param nlsProcessBizH
	 * @return
	 * @author qiuyf
	 * @since 2019年1月10日 下午8:49:00
	 * @version 1.0
	 */
	public List<NlsProcessBizH> queryListByConditionByPage(NlsProcessBizHVO nlsProcessBizH);

	/**
	 * 查看当前用户对应的数据 <br>
	 * 
	 * @param nlsProcessBizHVo
	 * @return
	 * @author huangwb
	 * @since 2019年3月5日 下午7:31:19
	 * @date 2019年3月5日 下午7:31:19
	 * @version 0.1
	 */
	public List<NlsProcessBizH> queryAllByLevelOneByPage(NlsProcessBizHVO nlsProcessBizHVo);

	/**
	 * 查看当前用户及所属机构对应的数据 <br>
	 * 
	 * @param nlsProcessBizHVo
	 * @return
	 * @author huangwb
	 * @since 2019年3月5日 下午7:31:33
	 * @date 2019年3月5日 下午7:31:33
	 * @version 0.1
	 */
	public List<NlsProcessBizH> queryAllByLevelTwoByPage(NlsProcessBizHVO nlsProcessBizHVo);

	/**
	 * 查看当前用户所在机构及下属机构对应的数据 <br>
	 * 
	 * @param nlsProcessBizHVo
	 * @return
	 * @author huangwb
	 * @since 2019年3月5日 下午7:31:48
	 * @date 2019年3月5日 下午7:31:48
	 * @version 0.1
	 */
	public List<NlsProcessBizH> queryAllByLevelThreeByPage(NlsProcessBizHVO nlsProcessBizHVo);

	/**
	 * 预留，便于后续自定义 <br>
	 * 
	 * @param nlsProcessBizHVo
	 * @return
	 * @author huangwb
	 * @since 2019年3月5日 下午7:32:02
	 * @date 2019年3月5日 下午7:32:02
	 * @version 0.1
	 */
	public List<NlsProcessBizH> queryAllByLevelFourByPage(NlsProcessBizHVO nlsProcessBizHVo);

	/**
	 * 预留，便于后续自定义 <br>
	 * 
	 * @param nlsProcessBizHVo
	 * @return
	 * @author huangwb
	 * @since 2019年3月5日 下午7:32:16
	 * @date 2019年3月5日 下午7:32:16
	 * @version 0.1
	 */
	public List<NlsProcessBizH> queryAllByLevelFiveByPage(NlsProcessBizHVO nlsProcessBizHVo);

}
